﻿using System;

namespace 组合模式
{
    class Program
    {
        static void Main(string[] args)
        {
            Component deptA = new Depart("华为集团");
            Component deptB = new Depart("华为影视公司");
            Component deptC = new Depart("华为手机公司");

            Component deptBa = new Depart("华为影视上海分公司");
            Component deptCa = new Depart("华为手机荣耀分公司");

            Component empA = new Employee("华为总公司直属员工");
            Component empB = new Employee("华为影视公司员工");
            Component empC = new Employee("华为手机公司员工");

            Component empCa1 = new Employee("华为手机荣耀分公司员工A");
            Component empCa2 = new Employee("华为手机荣耀分公司员工B");

            Component empBa1 = new Employee("华为影视上海分公司员工A");
            Component empBa2 = new Employee("华为影视上海分公司员工B");

            //华为集团下面的2个分公司
            deptA.Add(deptB);
            deptA.Add(deptC);

            //子公司下面的省级子公司
            deptB.Add(deptBa);
            deptC.Add(deptCa);

            deptA.Add(empA);
            deptB.Add(empB);
            deptC.Add(empC);

            deptBa.Add(empBa1);
            deptBa.Add(empBa2);

            deptCa.Add(empCa1);
            deptCa.Add(empCa2);

            deptA.Display(1);
        }
    }
}
